package com.example.fitnessservice.service;

import com.example.fitnessservice.module.pojo.DietFoodCategory;
import com.example.fitnessservice.module.pojo.SystemDietCookbook;

import java.math.BigDecimal;
import java.util.List;

public interface DietService {
    /**
     * 根据分类查询食物
     * @return
     */
    public List<DietFoodCategory> findFoodAll(Integer currentPage, Integer pageSize, String food_cate);

    /**
     * 根据bmi指数查询食谱
     * @param bmi
     * @return
     */
    public List<SystemDietCookbook> findSystemCookbook(Integer currentPage, Integer pageSize, BigDecimal bmi);

    /**
     * 根据食物名称进行模糊查询食物
     * @param foodName
     * @return
     */
    public List<DietFoodCategory> findFoodByName(String foodName);

    /**
     * 创建带有用户id的空食谱
     * @param userId
     */
    public int createUserDietCookbookEmpty(int userId);

    /**
     * 向user_diet_cookbook_food表中添加早餐食物
     * @param userCookbookId
     * @param foodId
     * @return
     */
    public int addBreakfastFood(int userCookbookId, int foodId);

    /**
     * 查找刚刚给用户创建的带有用户id但其余数据均为空的食谱的id
     * @return
     */
    public int findEmptyCookbookId();

    /**
     * 向user_diet_cookbook_food表中添加午餐食物
     * @param userCookbookId
     * @param foodId
     * @return
     */
    public int addLunchFood(int userCookbookId, int foodId);

    /**
     * 向user_diet_cookbook_food表中添加晚餐食物
     * @param userCookbookId
     * @param foodId
     * @return
     */
    public int addDinnerFood(int userCookbookId, int foodId);

    /**
     * 保存用户的自定义食谱
     * @return
     */
    public int storeUserDietCookbook(Integer userId, Integer cookbookId);

    /**
     * 查找某一用户id下的某一食谱id下的所有早餐食物id
     * @param userId
     * @param cookbookId
     * @return
     */
//    public List<Integer> findUserDietCookbookFoodBreakfast(Integer userId, Integer cookbookId);

    /**
     * 查找某一用户id下的某一食谱id下的所有午餐食物id
     * @param userId
     * @param cookbookId
     * @return
     */
//    public List<Integer> findUserDietCookbookFoodLunch(Integer userId, Integer cookbookId);

    /**
     * 查找某一用户id下的某一食谱id下的所有晚餐食物id
     * @param userId
     * @param cookbookId
     * @return
     */
//    public List<Integer> findUserDietCookbookFoodDinner(Integer userId, Integer cookbookId);
}
